<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GdaTreeNode: GNOME Data Access 5 manual</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="index.html" title="GNOME Data Access 5 manual">
<link rel="up" href="trees.html" title="Trees">
<link rel="prev" href="GdaTreeManager.html" title="GdaTreeManager">
<link rel="next" href="GdaTreeMgrLabel.html" title="GdaTreeMgrLabel">
<meta name="generator" content="GTK-Doc V1.32 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
                  <a href="#GdaTreeNode.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                  <a href="#GdaTreeNode.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                  <a href="#GdaTreeNode.properties" class="shortcut">Properties</a></span><span id="nav_signals">  <span class="dim">|</span> 
                  <a href="#GdaTreeNode.signals" class="shortcut">Signals</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="trees.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="GdaTreeManager.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="GdaTreeMgrLabel.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="GdaTreeNode"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="GdaTreeNode.top_of_page"></a>GdaTreeNode</span></h2>
<p>GdaTreeNode — A node in a <a class="link" href="GdaTree.html" title="GdaTree"><span class="type">GdaTree</span></a></p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="GdaTreeNode.stability-level"></a><h2>Stability Level</h2>
<a href="http://foldoc.org/Stable"><span class="acronym">Stable</span></a>, unless otherwise indicated
</div>
<div class="refsect1">
<a name="GdaTreeNode.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_proto_type">
<col class="functions_proto_name">
</colgroup>
<tbody>
<tr>
<td class="function_type">
<a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="returnvalue">GdaTreeNode</span></a> *
</td>
<td class="function_name">
<a class="link" href="GdaTreeNode.html#gda-tree-node-new" title="gda_tree_node_new ()">gda_tree_node_new</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="returnvalue">GdaTreeNode</span></a> *
</td>
<td class="function_name">
<a class="link" href="GdaTreeNode.html#gda-tree-node-get-parent" title="gda_tree_node_get_parent ()">gda_tree_node_get_parent</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *
</td>
<td class="function_name">
<a class="link" href="GdaTreeNode.html#gda-tree-node-get-children" title="gda_tree_node_get_children ()">gda_tree_node_get_children</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="returnvalue">GdaTreeNode</span></a> *
</td>
<td class="function_name">
<a class="link" href="GdaTreeNode.html#gda-tree-node-get-child-index" title="gda_tree_node_get_child_index ()">gda_tree_node_get_child_index</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="returnvalue">GdaTreeNode</span></a> *
</td>
<td class="function_name">
<a class="link" href="GdaTreeNode.html#gda-tree-node-get-child-name" title="gda_tree_node_get_child_name ()">gda_tree_node_get_child_name</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GdaTreeNode.html#gda-tree-node-set-node-attribute" title="gda_tree_node_set_node_attribute ()">gda_tree_node_set_node_attribute</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue-struct"><span class="returnvalue">GValue</span></a> *
</td>
<td class="function_name">
<a class="link" href="GdaTreeNode.html#gda-tree-node-get-node-attribute" title="gda_tree_node_get_node_attribute ()">gda_tree_node_get_node_attribute</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue-struct"><span class="returnvalue">GValue</span></a> *
</td>
<td class="function_name">
<a class="link" href="GdaTreeNode.html#gda-tree-node-fetch-attribute" title="gda_tree_node_fetch_attribute ()">gda_tree_node_fetch_attribute</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GdaTreeNode.properties"></a><h2>Properties</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="properties_type">
<col width="300px" class="properties_name">
<col width="200px" class="properties_flags">
</colgroup>
<tbody><tr>
<td class="property_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
<td class="property_name"><a class="link" href="GdaTreeNode.html#GdaTreeNode--name" title="The “name” property">name</a></td>
<td class="property_flags">Read / Write</td>
</tr></tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GdaTreeNode.signals"></a><h2>Signals</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="signal_proto_type">
<col width="300px" class="signal_proto_name">
<col width="200px" class="signal_proto_flags">
</colgroup>
<tbody>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="GdaTreeNode.html#GdaTreeNode-node-changed" title="The “node-changed” signal">node-changed</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="GdaTreeNode.html#GdaTreeNode-node-deleted" title="The “node-deleted” signal">node-deleted</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="GdaTreeNode.html#GdaTreeNode-node-has-child-toggled" title="The “node-has-child-toggled” signal">node-has-child-toggled</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr>
<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="GdaTreeNode.html#GdaTreeNode-node-inserted" title="The “node-inserted” signal">node-inserted</a></td>
<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GdaTreeNode.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="other_proto_type">
<col class="other_proto_name">
</colgroup>
<tbody><tr>
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="GdaTreeNode.html#GdaTreeNode-struct" title="GdaTreeNode">GdaTreeNode</a></td>
</tr></tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GdaTreeNode.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="screen">    <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject-struct">GObject</a>
    <span class="lineart">╰──</span> GdaTreeNode
</pre>
</div>
<div class="refsect1">
<a name="GdaTreeNode.includes"></a><h2>Includes</h2>
<pre class="synopsis">#include &lt;libgda/gda-statement-extra.h&gt;
</pre>
</div>
<div class="refsect1">
<a name="GdaTreeNode.description"></a><h2>Description</h2>
<p>Every node in a <a class="link" href="GdaTree.html" title="GdaTree"><span class="type">GdaTree</span></a> tree is represented by a single <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> object. There is no distinction
between nodes which have children and those which don't (leaf nodes).</p>
<p>The <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> is very basic as it only has a "name" attribute: users are encouraged to subclass it to
add more features if needed (and make use of them by defining a <a class="link" href="GdaTreeManager.html#GdaTreeManagerNodeFunc" title="GdaTreeManagerNodeFunc ()"><span class="type">GdaTreeManagerNodeFunc</span></a> function and 
calling <a class="link" href="GdaTreeManager.html#gda-tree-manager-set-node-create-func" title="gda_tree_manager_set_node_create_func ()"><code class="function">gda_tree_manager_set_node_create_func()</code></a>).</p>
</div>
<div class="refsect1">
<a name="GdaTreeNode.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="gda-tree-node-new"></a><h3>gda_tree_node_new ()</h3>
<pre class="programlisting"><a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="returnvalue">GdaTreeNode</span></a> *
gda_tree_node_new (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
<p>Creates a new <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> object</p>
<div class="refsect3">
<a name="gda-tree-node-new.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>a name, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<a href="http://foldoc.org/allow-none"><span class="acronym">allow-none</span></a>]</span></td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gda-tree-node-new.returns"></a><h4>Returns</h4>
<p>a new <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a>. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20full"><span class="acronym">transfer full</span></a>]</span></p>
</div>
<p class="since">Since: 4.2</p>
</div>
<hr>
<div class="refsect2">
<a name="gda-tree-node-get-parent"></a><h3>gda_tree_node_get_parent ()</h3>
<pre class="programlisting"><a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="returnvalue">GdaTreeNode</span></a> *
gda_tree_node_get_parent (<em class="parameter"><code><a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> *node</code></em>);</pre>
<p>Get the <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> parent of <em class="parameter"><code>node</code></em>
 in the <a class="link" href="GdaTree.html" title="GdaTree"><span class="type">GdaTree</span></a> node belongs to. If <em class="parameter"><code>node</code></em>
 is at the top level,
then this method return <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
<div class="refsect3">
<a name="gda-tree-node-get-parent.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>node</p></td>
<td class="parameter_description"><p>a <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> object</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gda-tree-node-get-parent.returns"></a><h4>Returns</h4>
<p>the parent <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a>. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20none"><span class="acronym">transfer none</span></a>]</span></p>
</div>
<p class="since">Since: 4.2</p>
</div>
<hr>
<div class="refsect2">
<a name="gda-tree-node-get-children"></a><h3>gda_tree_node_get_children ()</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *
gda_tree_node_get_children (<em class="parameter"><code><a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> *node</code></em>);</pre>
<p>Get a list of all <em class="parameter"><code>node</code></em>
's children, free it with <a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#g-slist-free"><code class="function">g_slist_free()</code></a> after usage</p>
<div class="refsect3">
<a name="gda-tree-node-get-children.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>node</p></td>
<td class="parameter_description"><p>a <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> object</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gda-tree-node-get-children.returns"></a><h4>Returns</h4>
<p>a new <a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> objects, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>node</code></em>
does not have any child. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20container"><span class="acronym">transfer container</span></a>][<a href="http://foldoc.org/element-type"><span class="acronym">element-type</span></a> GdaTreeNode]</span></p>
</div>
<p class="since">Since: 4.2</p>
</div>
<hr>
<div class="refsect2">
<a name="gda-tree-node-get-child-index"></a><h3>gda_tree_node_get_child_index ()</h3>
<pre class="programlisting"><a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="returnvalue">GdaTreeNode</span></a> *
gda_tree_node_get_child_index (<em class="parameter"><code><a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> *node</code></em>,
                               <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> index</code></em>);</pre>
<p>Get the <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> child of <em class="parameter"><code>node</code></em>
 at position <em class="parameter"><code>index</code></em>
 (starting at 0).</p>
<div class="refsect3">
<a name="gda-tree-node-get-child-index.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>node</p></td>
<td class="parameter_description"><p>a <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> object</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>index</p></td>
<td class="parameter_description"><p>a index</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gda-tree-node-get-child-index.returns"></a><h4>Returns</h4>
<p>the <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a>, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not found. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20none"><span class="acronym">transfer none</span></a>]</span></p>
</div>
<p class="since">Since: 4.2</p>
</div>
<hr>
<div class="refsect2">
<a name="gda-tree-node-get-child-name"></a><h3>gda_tree_node_get_child_name ()</h3>
<pre class="programlisting"><a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="returnvalue">GdaTreeNode</span></a> *
gda_tree_node_get_child_name (<em class="parameter"><code><a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> *node</code></em>,
                              <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
<p>Get the <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> child of <em class="parameter"><code>node</code></em>
 which has the <a class="link" href="libgda-5.0-Attributes-manager.html#GDA-ATTRIBUTE-NAME:CAPS" title="GDA_ATTRIBUTE_NAME"><span class="type">GDA_ATTRIBUTE_NAME</span></a> set to <em class="parameter"><code>name</code></em>
</p>
<div class="refsect3">
<a name="gda-tree-node-get-child-name.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>node</p></td>
<td class="parameter_description"><p>a <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> object</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>requested node's name</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gda-tree-node-get-child-name.returns"></a><h4>Returns</h4>
<p>the <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a>, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not found. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20none"><span class="acronym">transfer none</span></a>]</span></p>
</div>
<p class="since">Since: 4.2</p>
</div>
<hr>
<div class="refsect2">
<a name="gda-tree-node-set-node-attribute"></a><h3>gda_tree_node_set_node_attribute ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gda_tree_node_set_node_attribute (<em class="parameter"><code><a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> *node</code></em>,
                                  <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *attribute</code></em>,
                                  <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue-struct"><span class="type">GValue</span></a> *value</code></em>,
                                  <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>);</pre>
<p>Set the value associated to a named attribute. The <em class="parameter"><code>attribute</code></em>
 string is used AS IT IS by this method (eg.
no copy of it is made), and
the memory it uses will be freed using the <em class="parameter"><code>destroy</code></em>
 function when no longer needed (if <em class="parameter"><code>destroy</code></em>
 is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>,
then the string will not be freed at all).</p>
<p>Attributes can have any name, but Libgda proposes some default names, 
see this section.</p>
<p>For example one would use it as:</p>
<code class="code">
gda_tree_node_set_node_attribute (node, g_strdup (my_attribute), my_value, g_free);
gda_tree_node_set_node_attribute (node, GDA_ATTRIBUTE_NAME, my_value, NULL);
</code><p>If there is already an attribute named <em class="parameter"><code>attribute</code></em>
 set, then its value is replaced with the new value (<em class="parameter"><code>value</code></em>
 is
copied), except if <em class="parameter"><code>value</code></em>
 is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, in which case the attribute is removed.</p>
<div class="refsect3">
<a name="gda-tree-node-set-node-attribute.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>node</p></td>
<td class="parameter_description"><p>a <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>attribute</p></td>
<td class="parameter_description"><p>attribute name</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>value</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue-struct"><span class="type">GValue</span></a>, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<a href="http://foldoc.org/transfer%20none"><span class="acronym">transfer none</span></a>][<a href="http://foldoc.org/allow-none"><span class="acronym">allow-none</span></a>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>destroy</p></td>
<td class="parameter_description"><p>a function to be called when <em class="parameter"><code>attribute</code></em>
is not needed anymore, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: 4.2</p>
</div>
<hr>
<div class="refsect2">
<a name="gda-tree-node-get-node-attribute"></a><h3>gda_tree_node_get_node_attribute ()</h3>
<pre class="programlisting">const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue-struct"><span class="returnvalue">GValue</span></a> *
gda_tree_node_get_node_attribute (<em class="parameter"><code><a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> *node</code></em>,
                                  <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *attribute</code></em>);</pre>
<p>Get the value associated to the attribute named <em class="parameter"><code>attribute</code></em>
 for <em class="parameter"><code>node</code></em>
. The difference with <a class="link" href="GdaTreeNode.html#gda-tree-node-fetch-attribute" title="gda_tree_node_fetch_attribute ()"><code class="function">gda_tree_node_fetch_attribute()</code></a>
is that <a class="link" href="GdaTreeNode.html#gda-tree-node-fetch-attribute" title="gda_tree_node_fetch_attribute ()"><code class="function">gda_tree_node_fetch_attribute()</code></a> will also query <em class="parameter"><code>node</code></em>
's parents (recursively up to the top level node) if
the attribute is not set for <em class="parameter"><code>node</code></em>
.</p>
<p>Attributes can have any name, but Libgda proposes some default names, 
see this section.</p>
<div class="refsect3">
<a name="gda-tree-node-get-node-attribute.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>node</p></td>
<td class="parameter_description"><p>a <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>attribute</p></td>
<td class="parameter_description"><p>attribute name as a string</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gda-tree-node-get-node-attribute.returns"></a><h4>Returns</h4>
<p>a read-only <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue-struct"><span class="type">GValue</span></a>, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not attribute named <em class="parameter"><code>attribute</code></em>
has been set for <em class="parameter"><code>node</code></em>
. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20none"><span class="acronym">transfer none</span></a>]</span></p>
</div>
<p class="since">Since: 4.2</p>
</div>
<hr>
<div class="refsect2">
<a name="gda-tree-node-fetch-attribute"></a><h3>gda_tree_node_fetch_attribute ()</h3>
<pre class="programlisting">const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue-struct"><span class="returnvalue">GValue</span></a> *
gda_tree_node_fetch_attribute (<em class="parameter"><code><a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> *node</code></em>,
                               <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *attribute</code></em>);</pre>
<p>Get the value associated to the attribute named <em class="parameter"><code>attribute</code></em>
 for <em class="parameter"><code>node</code></em>
. If the attribute is not set,
then <em class="parameter"><code>node</code></em>
's parents is queries (recursively up to the top level node).</p>
<p>Attributes can have any name, but Libgda proposes some default names,
see this section.</p>
<div class="refsect3">
<a name="gda-tree-node-fetch-attribute.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>node</p></td>
<td class="parameter_description"><p>a <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>attribute</p></td>
<td class="parameter_description"><p>attribute name as a string</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gda-tree-node-fetch-attribute.returns"></a><h4>Returns</h4>
<p>a read-only <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue-struct"><span class="type">GValue</span></a>, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if not attribute named <em class="parameter"><code>attribute</code></em>
has been set for <em class="parameter"><code>node</code></em>
. </p>
<p><span class="annotation">[<a href="http://foldoc.org/transfer%20none"><span class="acronym">transfer none</span></a>]</span></p>
</div>
<p class="since">Since: 4.2</p>
</div>
</div>
<div class="refsect1">
<a name="GdaTreeNode.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="GdaTreeNode-struct"></a><h3>GdaTreeNode</h3>
<pre class="programlisting">typedef struct _GdaTreeNode GdaTreeNode;</pre>
</div>
</div>
<div class="refsect1">
<a name="GdaTreeNode.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GdaTreeNode--name"></a><h3>The <code class="literal">“name”</code> property</h3>
<pre class="programlisting">  “name”                     <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
<p>Node's name attribute.</p>
<p>Owner: GdaTreeNode</p>
<p>Flags: Read / Write</p>
<p>Default value: NULL</p>
</div>
</div>
<div class="refsect1">
<a name="GdaTreeNode.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="GdaTreeNode-node-changed"></a><h3>The <code class="literal">“node-changed”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> *reporting,
               <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> *node,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)</pre>
<p>Gets emitted when a <em class="parameter"><code>node</code></em>
 has changed</p>
<div class="refsect3">
<a name="GdaTreeNode-node-changed.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>reporting</p></td>
<td class="parameter_description"><p>the <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> which emits the signal (may be a parent of <em class="parameter"><code>node</code></em>
, or <em class="parameter"><code>node</code></em>
itself)</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>node</p></td>
<td class="parameter_description"><p>the <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> which has changed</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
<p class="since">Since: 4.2</p>
</div>
<hr>
<div class="refsect2">
<a name="GdaTreeNode-node-deleted"></a><h3>The <code class="literal">“node-deleted”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> *reporting,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>       *relative_path,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)</pre>
<p>Gets emitted when a <em class="parameter"><code>node</code></em>
 has been removed</p>
<div class="refsect3">
<a name="GdaTreeNode-node-deleted.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>reporting</p></td>
<td class="parameter_description"><p>the <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> which emits the signal (a parent of the removed node)</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>relative_path</p></td>
<td class="parameter_description"><p>the path the node held, relative to <em class="parameter"><code>reporting</code></em>
</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
<p class="since">Since: 4.2</p>
</div>
<hr>
<div class="refsect2">
<a name="GdaTreeNode-node-has-child-toggled"></a><h3>The <code class="literal">“node-has-child-toggled”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> *reporting,
               <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> *node,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)</pre>
<p>Gets emitted when a <em class="parameter"><code>node</code></em>
 has has a child when it did not have any or when it
does not have a ny children anymore when it had some</p>
<div class="refsect3">
<a name="GdaTreeNode-node-has-child-toggled.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>reporting</p></td>
<td class="parameter_description"><p>the <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> which emits the signal (may be a parent of <em class="parameter"><code>node</code></em>
, or <em class="parameter"><code>node</code></em>
itself)</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>node</p></td>
<td class="parameter_description"><p>the <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> which changed from having children to being a
leaf or the other way around</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
<p class="since">Since: 4.2</p>
</div>
<hr>
<div class="refsect2">
<a name="GdaTreeNode-node-inserted"></a><h3>The <code class="literal">“node-inserted”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> *reporting,
               <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> *node,
               <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>     user_data)</pre>
<p>Gets emitted when a <em class="parameter"><code>node</code></em>
 has been inserted</p>
<div class="refsect3">
<a name="GdaTreeNode-node-inserted.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>reporting</p></td>
<td class="parameter_description"><p>the <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> which emits the signal (may be a parent of <em class="parameter"><code>node</code></em>
, or <em class="parameter"><code>node</code></em>
itself)</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>node</p></td>
<td class="parameter_description"><p>the <a class="link" href="GdaTreeNode.html" title="GdaTreeNode"><span class="type">GdaTreeNode</span></a> which has been inserted</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p>
<p class="since">Since: 4.2</p>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.32</div>
</body>
</html>